home *** CD-ROM | disk | FTP | other *** search
/ Winzipper / Winzipper_ISO.iso / nt4.0 server / OEMNADP3.IN_ / oemnadp3.inf
INI File  |  1996-07-12  |  28KB  |  772 lines

  1. [Identification]
  2.     OptionType = NetAdapter
  3. [PlatformsSupported]
  4.     ISA
  5.     EISA
  6.     "Jazz-Internal Bus"
  7. [Options]
  8.     P1390
  9. [IRQ_Level]
  10. IRQ_3 = "3"
  11. IRQ_4 = "4"
  12. IRQ_5 = "5"
  13. IRQ_6 = "6"
  14. IRQ_7 = "7"
  15. IRQ_9 = "9"
  16. IRQ_10 = "10"
  17. IRQ_11 = "11"
  18. IRQ_12 = "12"
  19. [IOAddrChoices]
  20. IOAddr_1 = "0x0A20", 2592
  21. IOAddr_2 = "0x1A20", 6688
  22. IOAddr_3 = "0x2A20", 10784
  23. IOAddr_4 = "0x3A20", 14880
  24. IOAddr_5 = "0x4A20", 18976
  25. IOAddr_6 = "0x5A20", 23072
  26. [DMAChoices]
  27. DMA_5 = 5
  28. DMA_6 = 6
  29. DMA_7 = 7
  30. [FileConstants]
  31. UtilityInf      = "UTILITY.INF"
  32. subroutineinf   = "SUBROUTN.INF"
  33. SoftwareType    = "driver"
  34. Exit_Code       = 0
  35. NetEventDLL     = "%SystemRoot%\System32\netevent.dll"
  36. IoLogMsgDLL     = "%SystemRoot%\System32\IoLogMsg.dll"
  37. IOBaseAddressList  = ^(IOAddrChoices, 1)
  38. IOBaseAddressValue = ^(IOAddrChoices, 2)
  39. IRQ_List = ^(IRQ_Level, 1)
  40. DMA_List = ^(DMAChoices, 1)
  41. Manufacturer    = "Microsoft"
  42. ProductMajorVersion     = "4"
  43. ProductMinorVersion     = "0"
  44. ProductVersion  = $(ProductMajorVersion)"."$(ProductMinorVersion)
  45. ProductSoftwareName     = "Proteon"
  46. ProductSoftwareImagePath = "\SystemRoot\System32\drivers\pronet16.sys"
  47. NetRuleSoftwareType     = "proteonSys ndisDriver proteonDriver"
  48. NetRuleSoftwareUse      = $(SoftwareType)
  49. NetRuleSoftwareBindForm = """ProteonSys"" yes no container"
  50. NetRuleSoftwareClass    = {"proteonDriver basic"}
  51. ProductHardwareName     = "Proteon"
  52. NetRuleHardwareType     = "p1390 p1390Adapter"
  53. NetRuleHardwareBindForm = " yes yes container"
  54. NetRuleHardwareClass    = {"p1390Adapter basic"}
  55. ProductOpSupport     = 134 
  56. ProductKeyName  = $(!NTN_SoftwareBase)"\"$(Manufacturer)"\"$(ProductSoftwareName)"\CurrentVersion"
  57. ParamKeyName    = $(!NTN_ServiceBase)"\"$(ProductHardwareName)"\Parameters"
  58. [GeneralConstants]
  59. from      = ""
  60. to        = ""
  61. ExitCodeOk     = 0
  62. ExitCodeCancel = 1
  63. ExitCodeFatal  = 2
  64. KeyNull         = ""
  65. MAXIMUM_ALLOWED   = 33554432
  66. RegistryErrorIndex = NO_ERROR
  67. KeyProduct      = ""
  68. KeyParameters   = ""
  69. TRUE            = 1
  70. FALSE           = 0
  71. NoTitle            = 0
  72. ExitState   = "Active"
  73. OldVersionExisted = $(FALSE)
  74. DriverPath      = $(!STF_NTPATH)\drivers
  75. [date]
  76.     Now = {} ? $(!LIBHANDLE) GetSystemDate
  77. [Identify]
  78.     read-syms Identification
  79.     set Status     = STATUS_SUCCESSFUL
  80.     set Identifier = $(OptionType)
  81.     set Media      = #("Source Media Descriptions", 1, 1)
  82.     Return $(Status) $(Identifier) $(Media)
  83. [ReturnOptions]
  84.     set Status        = STATUS_FAILED
  85.     set OptionList     = {}
  86.     set OptionTextList = {}
  87.     set LanguageList = ^(LanguagesSupported, 1)
  88.     Ifcontains(i) $($0) in $(LanguageList)
  89.         ifstr(i) $($1) == ""
  90.            goto returnoptions
  91.         endif
  92.         set PlatformList = ^(PlatformsSupported, 1)
  93.         Ifcontains(i) $($1) in $(PlatformList)
  94.            goto returnoptions
  95.         else
  96.            set Status = STATUS_NOTSUPPORTED
  97.            goto finish_ReturnOptions
  98.         endif
  99.     else
  100.         set Status = STATUS_NOLANGUAGE
  101.         goto finish_ReturnOptions
  102.     endif
  103. returnoptions = +
  104.     set OptionList     = ^(Options, 1)
  105.     set OptionTextList = ^(OptionsText$($0), 1)
  106.     set Status         = STATUS_SUCCESSFUL
  107. finish_ReturnOptions = +
  108.     Return $(Status) $(OptionList) $(OptionTextList)
  109. [InstallOption]
  110.     set Option   = $($1)
  111.     set SrcDir   = $($2)
  112.     set AddCopy  = $($3)
  113.     set DoCopy   = $($4)
  114.     set DoConfig = $($5)
  115.     set LanguageList = ^(LanguagesSupported, 1)
  116.     Ifcontains(i) $($0) NOT-IN $(LanguageList)
  117.         Return STATUS_NOLANGUAGE
  118.     endif
  119.     Debug-Output "OEMNADP3.INF: STF_CWDIR is: "$(!STF_CWDIR)
  120.     Debug-Output "OEMNADP3.INF: STF_LANGUAGE is: "$(!STF_LANGUAGE)
  121.     set-subst LF = "\n"
  122.     read-syms GeneralConstants
  123.     read-syms FileConstants
  124.     Shell $(UtilityInf), GetBindingInfo, "PROTEON"
  125.     ifint $($ShellCode) != $(!SHELL_CODE_OK)
  126.         Debug-Output "ShellCode error: cannot get an error string."
  127.         goto ShellCodeError
  128.     endif
  129.     set NetRuleSoftwareBindable = $($R1)
  130.     read-syms DialogConstants$(!STF_LANGUAGE)
  131.     ifstr(i) $(!NTN_Origination) == "NCPA"
  132.         set Continue = $(OK)
  133.     endif
  134.     read-syms FileConstants$(!STF_LANGUAGE)
  135.     detect date
  136.     set-title  $(FunctionTitle)
  137.     set to   = Begin
  138.     set from = Begin
  139.     set CommonStatus = STATUS_SUCCESSFUL
  140.     EndWait
  141. Begin = +
  142.     Ifstr(i) $(!NTN_InstallMode) == deinstall
  143.         set StartLabel = removeadapter
  144.     else-Ifstr(i) $(!NTN_InstallMode) == Update
  145.         set StartLabel = UpgradeSoftware
  146.     else-Ifstr(i) $(!NTN_InstallMode) == bind
  147.         set StartLabel = bindingadapter
  148.     else-Ifstr(i) $(!NTN_InstallMode) == configure
  149.         set CommonStatus = STATUS_REBOOT
  150.         set StartLabel = configureadapter
  151.         Ifstr(i) $(ProductKeyName) == $(!NTN_RegBase)
  152.             Debug-Output "Cannot configure the Proteon 1390 driver software."
  153.             Shell $(UtilityInf),RegistryErrorString,CANNOT_CONFIGURE_SOFTWARE
  154.             ifint $($ShellCode) != $(!SHELL_CODE_OK)
  155.                 Debug-Output "ShellCode error: cannot get an error string."
  156.                 goto ShellCodeError
  157.             endif
  158.             set Error = $($R0)
  159.             set from = end
  160.             set to = end
  161.             goto nonfatalinfo
  162.         endif
  163.     else
  164.         set StartLabel = installadapter
  165.         set OEM_ABANDON_OPTIONS = {}
  166.         set OEM_ABANDON_SOFTWARE = FALSE
  167.         set OEM_ABANDON_ON = TRUE
  168.     endif
  169.     set IRQLevel = 5
  170.     set IOBaseAddress = *($(IOBaseAddressList), 1)
  171.     set DMAChannel = *($(DMA_List), ~($(DMA_List), 5))
  172.     set RadioIn = { 2, 4 }
  173.     set CardType = 1
  174.     set from = $(fatal)
  175.     set to = $(fatal)
  176.     goto $(StartLabel)
  177. installadapter = +
  178.     OpenRegKey $(!REG_H_LOCAL) "" $(ProductKeyName) $(MAXIMUM_ALLOWED) KeyProduct
  179.     Ifstr $(KeyProduct) != $(KeyNull)
  180.         CloseRegKey $(KeyProduct)
  181.         ifstr(i) !(NTN_RegBase) == $(ProductKeyName)
  182.            Shell $(UtilityInf), VerExistedDlg, $(ProductSoftwareTitle),+
  183.                $(ProductVersion)
  184.            ifint $($ShellCode) != $(!SHELL_CODE_OK)
  185.                Debug-Output "ShellCode error: cannot get an error string."
  186.                goto ShellCodeError
  187.            endif
  188.            goto end
  189.         else
  190.            Shell $(UtilityInf), CardExistedDlg
  191.            ifint $($ShellCode) != $(!SHELL_CODE_OK)
  192.                Debug-Output "ShellCode error: cannot get an error string."
  193.                goto ShellCodeError
  194.            endif
  195.            ifstr(i) $($R1) != "OK"
  196.                set CommonStatus = STATUS_USERCANCEL
  197.                goto end
  198.            endif
  199.            set OldVersionExisted = $(TRUE)
  200.         endif
  201.     endif
  202.     goto adapteroptions
  203. configureadapter = +
  204.     Ifstr $(KeyProduct) == $(KeyNull)
  205.         OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_RegBase) $(MAXIMUM_ALLOWED) KeyProduct
  206.         Ifstr $(KeyProduct) == $(KeyNull)
  207.             set RegistryErrorIndex = CANNOT_FIND_COMPONENT_SERVICE
  208.             Debug-Output "Cannot find component product key"
  209.             goto fatalregistry
  210.         Endif
  211.     Endif
  212.     Debug-Output "INF: Shelling to FindService"
  213.     Shell $(UtilityInf) FindService, $(KeyProduct)
  214.     Ifint $($ShellCode) != $(!SHELL_CODE_OK)
  215.         Debug-Output "INF: FindService shell failure"
  216.         Goto ShellCodeError
  217.     Endif
  218.     Ifstr(i) $($R0) != NO_ERROR
  219.         Debug-Output "INF: FindService Shell error: "$($R0)
  220.         Goto fatalregistry
  221.     endif
  222.     set KeyParameters = $($R2)
  223.     CloseRegKey $($R1)
  224.     Ifstr $(KeyParameters) == $(KeyNull)
  225.         set RegistryErrorIndex = CANNOT_FIND_COMPONENT_SERVICE
  226.         Debug-Output "Cannot find component service"
  227.         goto fatalregistry
  228.     endif
  229.     set OldVersionExisted = $(TRUE )
  230.     set ValueName = ""
  231.     set ValueData = ""
  232.     set ValueStr  = ""
  233.     set ValueList = {}
  234.     EnumRegValue $(KeyParameters) ValueList
  235.     ForListDo $(ValueList)
  236.         set ValueItem = $($)
  237.         set ValueName = *($(ValueItem),1)
  238.         set ValueData = *($(ValueItem),4)
  239.         Ifstr(i) $(ValueName) == "CardType"
  240.             set CardType = $(ValueData)
  241.         else-Ifstr(i) $(ValueName) == "InterruptNumber"
  242.             set IRQLevel = $(ValueData)
  243.         else-Ifstr(i) $(ValueName) == "IOBaseAddress"
  244.             set IOAddrValue = $(ValueData)
  245.         else-Ifstr(i) $(ValueName) == "CableType"
  246.             set CableType = $(ValueData)
  247.         else-Ifstr(i) $(ValueName) == "DMAChannel"
  248.             set DMAChannel = $(ValueData)
  249.         else-Ifstr(i) $(ValueName) == "CardSpeed"
  250.             set CardSpeed = $(ValueData)
  251.         else-Ifstr(i) $(ValueName) == "NetworkAddress"
  252.             set NetworkAddress = $(ValueData)
  253.         else-ifstr(i) $(ValueName) == "BusType"
  254.             set BusInterfaceType = $(ValueData)
  255.         else-ifstr(i) $(ValueName) == "BusNumber"
  256.             set BusNumber = $(ValueData)
  257.         endif
  258.     EndForListDo
  259.     set IOBaseAddress = *($(IOBaseAddressList), ~($(IOBaseAddressValue),+
  260.         $(IOAddrValue)))
  261.     Ifstr(i) $(CableType) == ""
  262.         set Rad1 = 2
  263.     else
  264.         set Rad1 = $(CableType)
  265.     endif
  266.     Ifint $(CardSpeed) == 4
  267.         set Rad2 = 3
  268.     else
  269.         set Rad2 = 4
  270.     endif
  271.     set RadioIn = {$(Rad1), $(Rad2) }
  272.     goto adapteroptions
  273. adapteroptions = +
  274.     set from = adapteroptions
  275.     ifstr(i) $(!STF_GUI_UNATTENDED) == "YES"
  276.         ifstr(i) $(!AutoNetInterfaceType) != ""
  277.             set BusInterfaceType = $(!AutoNetInterfaceType)
  278.         else
  279.             set BusInterfaceType = 1    
  280.         endif
  281.         ifstr(i) $(!AutoNetBusNumber) != ""
  282.             set BusNumber = $(!AutoNetBusNumber)
  283.         else
  284.             set BusNumber = 0
  285.         endif
  286.         goto nextstep
  287.     endif
  288.     read-syms FileDependentDlg$(!STF_LANGUAGE)
  289.     ui start "InputDlg"
  290.     ifstr(i) $(DLGEVENT) == "CONTINUE"
  291.         set IRQLevel = $(Combo1Out)
  292.         set IOBaseAddress = $(Combo2Out)
  293.         set DMAChannel = $(Combo3Out)
  294.         set NetworkAddress = *($(EditTextOut),1)
  295.         IfContains "1" IN $(RadioOut)
  296.             set CableType = 1
  297.         else-IfContains "2" IN $(RadioOut)
  298.             set CableType = 2
  299.         endif
  300.         IfContains "3" IN $(RadioOut)
  301.             set CardSpeed = 4
  302.         else-IfContains "4" IN $(RadioOut)
  303.             set CardSpeed = 16
  304.         endif
  305.         ui pop 1
  306.     else-ifstr(i) $(DLGEVENT) == "BACK"
  307.         set CommonStatus = STATUS_USERCANCEL
  308.         Debug-Output "Action: exit. Bye."
  309.         ui pop 1
  310.         goto end
  311.     else
  312.         ui pop 1
  313.         Debug-Output "Action: unknown. Bye."
  314.         goto end
  315.     endif
  316.     ifstr(i) $(!STF_NCDETINFO) == {}
  317.         Shell $(UtilityInf),GetBusTypeDialog,$(ProductHardwareDescription) $(BusInterfaceType) $(BusNumber)
  318.         ifint $($ShellCode) != $(!SHELL_CODE_OK)
  319.             Debug-Output "ShellCode error."
  320.             goto ShellCodeError
  321.         endif
  322.         set BusInterfaceType = $($R1)
  323.         set BusNumber = $($R2)
  324.     else
  325.         set BusInterfaceType = *($(!STF_NCDETINFO),5)
  326.         set BusNumber = *($(!STF_NCDETINFO),6)
  327.     endif
  328. nextstep = +
  329.     ifint $(OldVersionExisted) == $(TRUE)
  330.         ifstr(i) $(!NTN_InstallMode) == configure
  331.             goto writeparameters
  332.         endif
  333.     endif
  334.     StartWait
  335.     ifint $(OldVersionExisted) == $(FALSE)
  336.         ifstr(i) $(!NTN_InstallMode) == "install"
  337.            Ifstr(i) $(DoCopy) == "YES"
  338.               Shell $(UtilityInf), DoAskSource, $(!STF_CWDDIR), $(SrcDir) YES
  339.               Ifint $($ShellCode) != $(!SHELL_CODE_OK)
  340.                   Goto ShellCodeError
  341.               Else-Ifstr(i) $($R0) == STATUS_FAILED
  342.                   Shell $(UtilityInf) RegistryErrorString "ASK_SOURCE_FAIL"
  343.                   ifint $($ShellCode) != $(!SHELL_CODE_OK)
  344.                       goto ShellCodeError
  345.                   endif
  346.                   set Error = $($R0)
  347.                   Goto fatal
  348.               Else-Ifstr(i) $($R0) == STATUS_USERCANCEL
  349.                   Goto successful
  350.               Endif
  351.               Set SrcDir = $($R1)
  352.            Endif
  353.            install "Install-Option"
  354.            ifstr(i) $(STF_INSTALL_OUTCOME) != STF_SUCCESS
  355.               Shell $(UtilityInf) RegistryErrorString "UNABLE_COPY_FILE"
  356.               ifint $($ShellCode) != $(!SHELL_CODE_OK)
  357.                   goto ShellCodeError
  358.               endif
  359.               set Error = $($R0)
  360.               goto fatal
  361.            endif
  362.         endif
  363.         Shell $(UtilityInf), AddSoftwareComponent, $(Manufacturer), +
  364.             $(ProductSoftwareName), +
  365.             $(ProductSoftwareName), +
  366.             $(ProductSoftwareTitle), $(STF_CONTEXTINFNAME), +
  367.             $(ProductSoftwareImagePath), "kernel", "NDIS", {}, "",+
  368.             $(NetEventDLL)
  369.         Set OEM_ABANDON_SOFTWARE = TRUE
  370.         ifint $($ShellCode) != $(!SHELL_CODE_OK)
  371.             Debug-Output "ShellCode error"
  372.             goto ShellCodeError
  373.         endif
  374.         set RegistryErrorIndex = $($R0)
  375.         Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
  376.             EndWait
  377.             Debug-Output "Registry error: add software components"
  378.             CloseRegKey $($R1)
  379.             CloseRegKey $($R2)
  380.             CloseRegKey $($R3)
  381.             CloseRegKey $($R4)
  382.             CloseRegKey $($R5)
  383.             goto fatalregistry
  384.         endif
  385.         set SoftProductKey      = $($R1)
  386.         Set SoftNetRuleKey      = $($R2)
  387.         Set SoftServiceKey      = $($R3)
  388.         Set SoftParameterKey    = $($R4)
  389.         Set SoftLinkageKey      = $($R5)
  390.         set NewValueList = {{SoftwareType,$(NoTitle),$(!REG_VT_SZ),$(SoftwareType)},+
  391.                            {MajorVersion,$(NoTitle),$(!REG_VT_DWORD),$(ProductMajorVersion)},+
  392.                            {MinorVersion,$(NoTitle),$(!REG_VT_DWORD),$(ProductMinorVersion)},+
  393.                            {Title,$(NoTitle),$(!REG_VT_SZ),$(ProductSoftwareTitle)},+
  394.                            {Description,$(NoTitle),$(!REG_VT_SZ),$(ProductSoftwareDescription)},+
  395.                            {ServiceName,$(NoTitle),$(!REG_VT_SZ),$(ProductSoftwareName)},+
  396.                            {InstallDate,$(NoTitle),$(!REG_VT_DWORD),*($(Now),1)}}
  397.         Shell  $(UtilityInf), AddValueList, $(SoftProductKey), $(NewValueList)
  398.         ifint $($ShellCode) != $(!SHELL_CODE_OK)
  399.             Debug-Output "ShellCode error."
  400.             goto ShellCodeError
  401.         endif
  402.         set RegistryErrorIndex = $($R0)
  403.         Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
  404.             EndWait
  405.             Debug-Output "Resgitry error: add value list."
  406.             CloseRegKey $(SoftProductKey)
  407.             CloseRegKey $(SoftNetRuleKey)
  408.             CloseRegKey $(SoftServiceKey)
  409.             CloseRegKey $(SoftParameterKey)
  410.             CloseRegKey $(SoftLinkageKey)
  411.             goto fatalregistry
  412.         endif
  413.         set NewValueList = {{type,$(NoTitle),$(!REG_VT_SZ),$(NetRuleSoftwareType)},+
  414.                             {use,$(NoTitle),$(!REG_VT_SZ),$(NetRuleSoftwareUse)}, +
  415.                             {bindform,$(NoTitle),$(!REG_VT_SZ),$(NetRuleSoftwareBindForm)}, +
  416.                             {class,$(NoTitle),$(!REG_VT_MULTI_SZ),$(NetRuleSoftwareClass)}, +
  417.                             {bindable,$(NoTitle),$(!REG_VT_MULTI_SZ),$(NetRuleSoftwareBindable)}, +
  418.                             {InfOption,$(NoTitle),$(!REG_VT_SZ),$(Option)}}
  419.         Shell  $(UtilityInf), AddValueList, $(SoftNetRuleKey), $(NewValueList)
  420.         ifint $($ShellCode) != $(!SHELL_CODE_OK)
  421.             Debug-Output "ShellCode error."
  422.             goto ShellCodeError
  423.         endif
  424.         set RegistryErrorIndex = $($R0)
  425.         CloseRegKey $(SoftProductKey)
  426.         CloseRegKey $(SoftNetRuleKey)
  427.         CloseRegKey $(SoftServiceKey)
  428.         CloseRegKey $(SoftParameterKey)
  429.         CloseRegKey $(SoftLinkageKey)
  430.         Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
  431.             EndWait
  432.             Debug-Output "Resgitry error: add value list."
  433.             goto fatalregistry
  434.         endif
  435.     endif
  436.     Shell $(UtilityInf), AddHardwareComponent, $(ProductHardwareName),$(STF_CONTEXTINFNAME),$(ProductKeyName)
  437.     ifint $($R4) != -1
  438.         Set OEM_ABANDON_OPTIONS = >($(OEM_ABANDON_OPTIONS), $(!NTN_SoftwareBase)"\Microsoft\Windows NT\CurrentVersion\NetworkCards\"$($R4))
  439.     endif
  440.     ifint $($ShellCode) != $(!SHELL_CODE_OK)
  441.         Debug-Output "Cannot add hardware component"
  442.         goto ShellCodeError
  443.     endif
  444.     set RegistryErrorIndex = $($R0)
  445.     Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
  446.         EndWait
  447.         Debug-Output "Registry error: add hardware component"
  448.         CloseRegKey $($R1)
  449.         CloseRegKey $($R2)
  450.         CloseRegKey $($R3)
  451.         goto fatalregistry
  452.     endif
  453.     set KeyParameters = $($R3)
  454.     set KeyAdapterRules = $($R2)
  455.     set AdapterNumber = $($R4)
  456.     set NewValueList = {{Manufacturer,$(NoTitle),$(!REG_VT_SZ),$(Manufacturer)},+
  457.                        {Title,$(NoTitle),$(!REG_VT_SZ),"["$($R4)"] "$(ProductHardwareTitle)},+
  458.                        {Description,$(NoTitle),$(!REG_VT_SZ),$(ProductHardwareDescription)},+
  459.                        {ProductName,$(NoTitle),$(!REG_VT_SZ),$(ProductHardwareName)},+
  460.                        {ServiceName,$(NoTitle),$(!REG_VT_SZ),$($R5)},+
  461.                        {OperationsSupport,$(NoTitle),$(!REG_VT_DWORD),$(ProductOpSupport)},+
  462.                        {InstallDate,$(NoTitle),$(!REG_VT_DWORD),*($(Now),1)}}
  463.     Shell  $(UtilityInf), AddValueList, $($R1), $(NewValueList)
  464.     ifint $($ShellCode) != $(!SHELL_CODE_OK)
  465.         Debug-Output "ShellCode error"
  466.         goto ShellCodeError
  467.     endif
  468.     CloseRegKey $($R1)
  469.     set TempProdName = """"$(ProductHardwareName)$(AdapterNumber)""""
  470.     set TempBindForm = $(TempProdName)$(NetRuleHardwareBindForm)
  471.     set NewValueList = {{type,$(NoTitle),$(!REG_VT_SZ),$(NetRuleHardwareType)},+
  472.                         {bindform,$(NoTitle),$(!REG_VT_SZ),$(TempBindForm)}, +
  473.                         {class,$(NoTitle),$(!REG_VT_MULTI_SZ),$(NetRuleHardwareClass)}, +
  474.                         {InfOption,$(NoTitle),$(!REG_VT_SZ),$(Option)}}
  475.     Shell  $(UtilityInf), AddValueList, $(KeyAdapterRules), $(NewValueList)
  476.     ifint $($ShellCode) != $(!SHELL_CODE_OK)
  477.         Debug-Output "ShellCode error."
  478.         goto ShellCodeError
  479.     endif
  480.     set RegistryErrorIndex = $($R0)
  481.     Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
  482.         EndWait
  483.         Debug-Output "Resgitry error: add value list."
  484.         CloseRegKey $(KeyParameters)
  485.         CloseRegKey $(KeyAdapterRules)
  486.         goto fatalregistry
  487.     endif
  488.     CloseRegKey $(KeyAdapterRules)
  489.     goto writeparameters
  490. writeparameters = +
  491.     set IOAddrValue = *($(IOBaseAddressValue), ~($(IOBaseAddressList),+
  492.         $(IOBaseAddress)))
  493.     set NewValueList = {+
  494.         {MediaType,$(NoTitle),$(!REG_VT_DWORD),2},+
  495.         {CardType,$(NoTitle),$(!REG_VT_DWORD),$(CardType)},+
  496.         {BusType,$(NoTitle),$(!REG_VT_DWORD),$(BusInterfaceType)},+
  497.         {BusNumber,$(NoTitle),$(!REG_VT_DWORD),$(BusNumber)},+
  498.         {InterruptNumber,$(NoTitle),$(!REG_VT_DWORD),$(IRQLevel)},+
  499.         {IoBaseAddress,$(NoTitle),$(!REG_VT_DWORD),$(IOAddrValue)},+
  500.         {CableType,$(NoTitle),$(!REG_VT_DWORD),$(CableType)},+
  501.         {DMAChannel,$(NoTitle),$(!REG_VT_DWORD),$(DMAChannel)},+
  502.         {NetworkAddress,$(NoTitle),$(!REG_VT_SZ),$(NetworkAddress)},+
  503.         {CardSpeed,$(NoTitle),$(!REG_VT_DWORD),$(CardSpeed)}+
  504.         }
  505.     Shell  $(UtilityInf), AddValueList, $(KeyParameters), $(NewValueList)
  506.     ifstr(i) $(!STF_GUI_UNATTENDED) == "YES"
  507.         Shell $(UtilityInf),AddDefaultNetCardParameters,$(KeyParameters)
  508.     endif
  509.     CloseRegKey $(KeyParameters)
  510.     ifint $($ShellCode) != $(!SHELL_CODE_OK)
  511.         Debug-Output "ShellCode error."
  512.         goto ShellCodeError
  513.     endif
  514.     set RegistryErrorIndex = $($R0)
  515.     Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
  516.         Debug-Output "Registry error: Add value list"
  517.         goto fatalregistry
  518.     endif
  519.     EndWait
  520.     goto successful
  521. bindingadapter =+
  522.     set Error = "Binding: Sorry, not yet implemented."
  523.     goto fatal
  524. removeadapter = +
  525.     Ifstr(i) $(ProductKeyName) == $(!NTN_RegBase)
  526.         Shell $(UtilityInf), RemoveSoftwareComponent, $(Manufacturer), +
  527.             $(ProductSoftwareName)
  528.         ifint $($ShellCode) != $(!SHELL_CODE_OK)
  529.             Debug-Output "ShellCode error"
  530.             goto ShellCodeError
  531.         endif
  532.         set RegistryErrorIndex = $($R0)
  533.         Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
  534.             goto fatalregistry
  535.         endif
  536.     else
  537.         Shell $(UtilityInf), RemoveHardwareComponent, $(Manufacturer), +
  538.             $(ProductSoftwareName), $(!NTN_RegBase)
  539.         ifint $($ShellCode) != $(!SHELL_CODE_OK)
  540.             Debug-Output "ShellCode error"
  541.             goto ShellCodeError
  542.         endif
  543.         set RegistryErrorIndex = $($R0)
  544.         Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
  545.             goto fatalregistry
  546.         endif
  547.     endif
  548.     goto end
  549. UpgradeSoftware = +
  550.     OpenRegKey $(!REG_H_LOCAL) "" $(ProductKeyName) $(MAXIMUM_ALLOWED) KeyProduct
  551.     Ifstr $(KeyProduct) != $(KeyNull)
  552.         install "Install-Update"
  553.         ifstr(i) $(STF_INSTALL_OUTCOME) != STF_SUCCESS
  554.             goto fatal
  555.         endif
  556.         SetRegValue $(KeyProduct) {MajorVersion,$(NoTitle),$(!REG_VT_SZ),$(ProductMajorVersion)}
  557.         SetRegValue $(KeyProduct) {MinorVersion,$(NoTitle),$(!REG_VT_SZ),$(ProductMinorVersion)}
  558.         CloseRegKey $(KeyProduct)
  559.     OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_ServiceBase)"\"$(ProductHardwareName) $(MAXIMUM_ALLOWED) ServiceKey
  560.     ifstr(i) $(ServiceKey) != ""
  561.         SetRegValue $(ServiceKey) {ImagePath,$(NoTitle),$(!REG_VT_EXPAND_SZ),$(ProductSoftwareImagePath)}
  562.         CloseRegKey $(ServiceKey)
  563.     endif
  564.     else
  565.         goto fatalregistry
  566.     endif
  567.     set iSearch = 1
  568. nextnetcard = +
  569.     Shell $(UtilityInf), FindNextNetworkCard, $(ProductHardwareName), $(iSearch)
  570.     set KeyNetcard = $($R0)
  571.     set iSearch = $($R1)
  572.     Debug-Output "OemNadEp.Inf: FindNextNetworkCard "$(KeyNetcard)","$(iSearch)
  573.     Ifstr $(KeyNetcard) != $(KeyNull)
  574.         Debug-Output "OemNadEp.Inf: Setting OperationsSupport value"
  575.         SetRegValue $(KeyNetcard) {OperationsSupport,$(NoTitle),$(!REG_VT_DWORD),$(ProductOpSupport)}
  576.         CloseRegKey $(KeyNetcard)
  577.         goto nextnetcard
  578.     Endif
  579.     goto end
  580. successful = +
  581.     goto end
  582. abandon = +
  583.     ForListDo $(OEM_ABANDON_OPTIONS)
  584.         Shell $(UtilityInf), RemoveHardwareComponent, $(Manufacturer), +
  585.             $(ProductSoftwareName), $($)
  586.         ifint $($ShellCode) != $(!SHELL_CODE_OK)
  587.             Debug-Output "ShellCode error"
  588.             goto ShellCodeError
  589.         endif
  590.         set RegistryErrorIndex = $($R0)
  591.         Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
  592.             goto fatalregistry
  593.         endif
  594.     EndForListDo
  595.     Ifstr(i) $(OEM_ABANDON_SOFTWARE) == TRUE
  596.         Shell $(UtilityInf), RemoveSoftwareComponent, $(Manufacturer), +
  597.             $(ProductSoftwareName), FALSE
  598.         ifint $($ShellCode) != $(!SHELL_CODE_OK)
  599.             Debug-Output "ShellCode error"
  600.             goto ShellCodeError
  601.         endif
  602.         set RegistryErrorIndex = $($R0)
  603.         Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
  604.             goto fatalregistry
  605.         endif
  606.     endif
  607.     goto end
  608. warning = +
  609.     Shell $(subroutineinf) SetupMessage, $(!STF_LANGUAGE), "WARNING", $(Error)
  610.     ifint $($ShellCode) != $(!SHELL_CODE_OK)
  611.         goto ShellCodeError
  612.     endif
  613.     ifstr(i) $($R1) == "OK"
  614.         goto $(to)
  615.     else-ifstr(i) $($R1) == "CANCEL"
  616.         goto $(from)
  617.     else
  618.         goto "end"
  619.     endif
  620. nonfatalinfo = +
  621.     Set CommonStatus = STATUS_USERCANCEL
  622.     Set Severity = STATUS
  623.     goto nonfatalmsg
  624. nonfatal = +
  625.     Set Severity = NONFATAL
  626.     goto nonfatalmsg
  627. nonfatalmsg = +
  628.     ifstr(i) $(Error) == ""
  629.         Set Severity = NONFATAL
  630.         Shell $(UtilityInf) RegistryErrorString "SETUP_FAIL"
  631.         ifint $($ShellCode) != $(!SHELL_CODE_OK)
  632.             goto ShellCodeError
  633.         endif
  634.         set Error = $($R0)
  635.     endif
  636.     Shell $(subroutineinf) SetupMessage, $(!STF_LANGUAGE), $(Severity), $(Error)
  637.     ifint $($ShellCode) != $(!SHELL_CODE_OK)
  638.         goto ShellCodeError
  639.     endif
  640.     ifstr(i) $($R1) == "OK"
  641.         goto $(from)
  642.     else
  643.         goto "end"
  644.     endif
  645. fatalregistry = +
  646.     Shell $(UtilityInf) RegistryErrorString $(RegistryErrorIndex)
  647.     ifint $($ShellCode) != $(!SHELL_CODE_OK)
  648.         goto ShellCodeError
  649.     endif
  650.     set Error = $($R0)
  651.     goto fatal
  652. fatal = +
  653.     ifstr(i) $(Error) == ""
  654.         Shell $(UtilityInf) RegistryErrorString "SETUP_FAIL"
  655.         ifint $($ShellCode) != $(!SHELL_CODE_OK)
  656.             goto ShellCodeError
  657.         endif
  658.         set Error = $($R0)
  659.     endif
  660.     Shell $(subroutineinf) SetupMessage, $(!STF_LANGUAGE), "FATAL", $(Error)
  661.     ifint $($ShellCode) != $(!SHELL_CODE_OK)
  662.         goto ShellCodeError
  663.     endif
  664.    goto setfailed
  665. ShellCodeError = +
  666.     set DlgType      = "MessageBox"
  667.     set STF_MB_TITLE = $(ShellCodeErrorTitle)
  668.     set STF_MB_TEXT  = $(ShellCodeErrorText)
  669.     set STF_MB_TYPE  = 1
  670.     set STF_MB_ICON  = 3
  671.     set STF_MB_DEF   = 1
  672.     ui start "Error Message"
  673.     goto setfailed
  674. setfailed = +
  675.     set CommonStatus = STATUS_FAILED
  676.     ifstr(i) $(OEM_ABANDON_ON) == TRUE
  677.         set OEM_ABANDON_ON = FALSE
  678.         goto abandon
  679.     endif
  680.     goto end
  681. end = +
  682.     goto term
  683. term = +
  684.     Return $(CommonStatus)
  685. [Install-Option]
  686.     set STF_VITAL = ""
  687.     ifstr(i) $(AddCopy) == "YES"
  688.         AddSectionFilesToCopyList Files-$(Option) $(SrcDir) $(!STF_WINDOWSSYSPATH)\drivers
  689.     endif
  690.     ifstr(i) $(DoCopy) == "YES"
  691.        set !STF_NCPA_FLUSH_COPYLIST = TRUE
  692.        CopyFilesInCopyList
  693.     endif
  694.     ifstr(i) $(DoConfig) == "YES"
  695.     endif
  696.     Exit
  697. [Install-Update]
  698.    set STF_VITAL        = ""
  699.    set STF_OVERWRITE    = "VERIFYSOURCEOLDER"
  700.    AddSectionFilesToCopyList Files-$(Option) $(SrcDir) $(!STF_WINDOWSSYSPATH)\drivers
  701.    exit
  702. [Source Media Descriptions]
  703.     1 = "Windows NT Server CD-ROM", TAGFILE = cdrom_s.40
  704. [Signature]
  705.     FileType = MICROSOFT_FILE
  706. [GetSignature]
  707.     read-syms Signature
  708.     return $(FileType)
  709. [ProductType]
  710. STF_PRODUCT  = LanmanNT
  711. STF_PLATFORM = I386
  712. [Files-Inf]
  713. 2,    oemsetup.inf,     SIZE=1000,    RENAME=$(!UG_Filename)
  714. [Files-P1390]
  715. 1,PRONET16.SYS , SIZE=999
  716. 1,PRORAPM.DWN , SIZE=999
  717. [LanguagesSupported]
  718.     ENG
  719. [OptionsTextENG]
  720.     P1390     = "Proteon p139X Adapter"
  721. [FileConstantsENG]
  722. ProCaption   = "Windows NT Setup"
  723. ProCancel    = "Cancel"
  724. ProCancelMsg = "Windows NT Networking is not correctly installed.  "+
  725.                "Are you sure you want to cancel copying files?"
  726. ProCancelCap = "Network Setup Message"
  727. ProText1     = "Copying:"
  728. ProText2     = "To:"
  729. FunctionTitle   = "Proteon p139X Adapter Card Setup"
  730. ProductSoftwareDescription      = "Proteon Adapter Driver"
  731. ProductHardwareDescription      = "Proteon p139X Adapter"
  732. ProductSoftwareTitle    = "Proteon Adapter Driver"
  733. ProductHardwareTitle    = "Proteon p139X Adapter"
  734. ShellCodeErrorTitle     = "Error: "$(FunctionTitle)
  735. ShellCodeErrorText      = "Shell Code Error."
  736. [DialogConstantsENG]
  737. Help        = "&Help"
  738. Exit        = "Cancel"
  739. OK          = "OK"
  740. HelpContext = ""
  741. Continue    = "Continue"
  742. Cancel      = "Cancel"
  743. [FileDependentDlgENG]
  744. Label1 = "&IRQ Level:"
  745. Label2 = "I/O &Port Base Address:"
  746. Label3 = "&DMA Channel:"
  747. Group1 = "Cable &Type"
  748. Group2 = "Card Sp&eed"
  749. Radio1 = "&UTP"
  750. Radio2 = "&STP"
  751. Edit1Label = "&Network Address:"
  752. Radio3 = "&4"
  753. Radio4 = "&16"
  754. DlgType = "RadioCombination"
  755. DlgTemplate = "PROTEON"
  756. Caption = $(FunctionTitle)
  757. CBOptionGreyed = {}
  758. RadioOptionGreyed = {}
  759. Combo1List = $(IRQ_List)
  760. Combo1Out  = $(IRQLevel)
  761. Combo2List = $(IOBaseAddressList)
  762. Combo2Out  = $(IOBaseAddress)
  763. Combo3List = $(DMA_List)
  764. Combo3Out  = $(DMAChannel)
  765. ComboListItemsIn  = {Combo1List, Combo2List, Combo3List}
  766. ComboListItemsOut = {Combo1Out, Combo2Out, Combo3Out}
  767. EditTextIn = $(NetworkAddress)
  768. EditTextLim = 17
  769. NotifyFields = {NO, NO, NO}
  770. RCCtlFocusOn = 403
  771. HelpContext = $(!IDH_DB_OEMNADP3_INS)
  772.